/**
 * Класс таблицы списка.
 * @lends phonebook.view.LoginView
 */
phonebook.view.LoginView = Base.extend({
	
    controller : null,		// объект управления процессами Приложения   
    InputUsername: "Пользователь:",
    InputPassowrd: "Пароль",
    btnLogin: "Вход",
    /**
     * Конструктор класса
     * @author Konstantin Chumachenko
     * 
     * @augments Base
     * @class Класс панели списка пользователей.
     * 
     * <p><b>Пример:</b></p>
     * <pre class="code">
     * var LoginView = new phonebook.view.LoginView(controller);
     * </pre>
     * 
     * @constructs
     * @param {Controller} controller Контроллер приложения.
     */
    constructor : function(controller) {	
        console.log("-- LoginView: Конструктор2.");
        this.controller = controller;
        this.domElement = $(MAIN_HOLDER);
        this.render(this.domElement);
    },
	
    /**
     * Возвращает DOM-элемент этой панели 
     * @function
     * @public 
     * @memberOf phonebook.view.LoginView#
     */
    getDomElement : function() {
        return this.domElement;
    },
	
    /**
     * Выполняется отрисовка панели.
     * @private 
     * @function
     * @param (elementDOM) renderTo Элемент DOM, внутри которого будет создан контейнер.
     * @return none
     */
    render : function(renderTo) {
        var me = this;
      
        
        /**
         * Поле ввода логина
         */
        this.loginName = new widget.Text({
            cls: 'inp',
            label: {
                text: "Login: ",
                cls: 'myLabel',
                width: 100
            },
            input: {
                cls: 'inp',
                align: 'left',
                placeHolder: 'Логин',
                width: 220
            },
            renderTo: renderTo
        });

        /**
         * Поле ввода пароля
         */
        this.loginPassword = new widget.Text({
            cls: 'inp',
            label: {
                text: "Password: ",
                cls: 'myLabel',
                width: 100
            },
            input: {
                type: 'password',
                align: 'left',
                placeHolder: 'Пароль',
                width: 220
            },
            renderTo: renderTo,
            listeners: {
                change: function(field,  value,  elementDom) {
                }
            }
        });
        /**
         * Кнопка выполнения запроса на авторизацию
         */
        this.loginButton = new widget.Button({
            id: 'loginButton',
            cls: 'btn',
            iconCls: 'icon-cog icon-blue',
            text: me.btnLogin,
            renderTo: renderTo,
            listeners: {
                click: function(btn,  elementDom){
                    me.controller.doLogin(me.loginName.value, me.loginPassword.value);
                }
            }
        });
    }
	
});